package com.project.service;

import com.github.pagehelper.PageInfo;
import com.project.bean.RoleBean;

import java.util.List;

/**
 * 角色业务接口
 */
public interface IRoleService {
    int PAGESIZE = 3;

    /**
     * 查询所有角色
     * @return 角色集合
     */
    public List<RoleBean> findAll();

    /**
     * 分页查询所有角色
     * @param pageNO 页码
     * @return 分页对象
     */
    public PageInfo<RoleBean> cutAll(int pageNO);

    /**
     * 添加角色，同时添加权限信息
     * @param role 角色对象
     * @param gradeArray 权限ID数组
     */
    public void addRole(RoleBean role,int[] gradeArray);

    /**
     * 删除角色，同时删除角色和权限中间表，以及用户和角色中间表信息
     * @param id 角色ID
     */
    public void delRole(int id);

    /**
     * 按ID查询角色，同时查询该角色权限集合
     * @param id 角色ID
     * @return 角色对象
     */
    public RoleBean findById(int id);

    /**
     * 修改角色权限
     * @param id 角色id
     * @param gradeArray 权限ID数组
     */
    public void updateRoleGrade(int id,int[] gradeArray);
}
